﻿using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Media;

namespace mediaControl.Vo
{
    public class ProgramItem
    {
        //项目类型 1 视频，2图片，3文件夹，4网页内容，5采集卡，6电脑桌面，7黑场颜色
        private String itemType;

        //项目类型 1 视频，2图片，3文件夹，4网页内容，5采集卡，6电脑桌面，7黑场颜色
        private String itemTypeStr;

        //项目路径
        private String itemPath;

        //显示模式
        private String displayMode;

        //播放模式
        private String playMode;

        private List<String> screens;

        private ImageSource imageSource;

        private string no;
        //出场方式
        private string exitMethod;

        //扩展信息
        private string extendInfo;

        private bool isLink=false;

        private int residenceTime;

        private bool isMute;

        private Visibility muteVisible = Visibility.Visible;

        private Visibility imageFlag=Visibility.Visible;

        private Visibility textFlag = Visibility.Hidden;

        private Visibility webFlag = Visibility.Hidden;

        private Visibility residenceFlag = Visibility.Hidden;

        private Visibility exitFlag = Visibility.Hidden;

        private string webUrl = null;

        private ObservableCollection<ScreenItemVo> screenItemVos;

        public DataTable DisplayModeTabe { get; set; }

        public DataTable ExitMethodTabe { get; set; }

        public ProgramItem()
        {
           
        }

        public ProgramItem(string itemType, string itemPath, string no)
        {
            ItemType = itemType;
            ItemPath = itemPath;
            No = no;
            this.DisplayMode = "2";
            this.exitMethod = "0";
        }

        public string ItemType { get => itemType; set => itemType = value; }
        public string ItemPath { get => itemPath; set => itemPath = value; }
        public string DisplayMode { get => displayMode; set => displayMode = value; }
        public string PlayMode { get => playMode; set => playMode = value; }
        public List<string> Screens { get => screens; set => screens = value; }
        public ImageSource ImageSource { get => imageSource; set => imageSource = value; }
        public bool IsLink { get => isLink; set => isLink = value; }
        public int ResidenceTime { get => residenceTime; set => residenceTime = value; }
        public bool IsMute { get => isMute; set => isMute = value; }
        public string ItemTypeStr { get => itemTypeStr; set => itemTypeStr = value; }
        public string No { get => no; set => no = value; }
        public ObservableCollection<ScreenItemVo> ScreenItemVos { get => screenItemVos; set => screenItemVos = value; }
        public string ExitMethod { get => exitMethod; set => exitMethod = value; }
        public Visibility ImageFlag { get => imageFlag; set => imageFlag = value; }
        public Visibility TextFlag { get => textFlag; set => textFlag = value; }
        public Visibility WebFlag { get => webFlag; set => webFlag = value; }
        public string WebUrl { get => webUrl; set => webUrl = value; }
        public Visibility MuteVisible { get => muteVisible; set => muteVisible = value; }
        public Visibility ResidenceFlag { get => residenceFlag; set => residenceFlag = value; }
        public Visibility ExitFlag { get => exitFlag; set => exitFlag = value; }
    }
}
